package cn.xhjava.crm.workbench.service;

import cn.xhjava.crm.workbench.domain.Clue;
import cn.xhjava.crm.workbench.domain.DateDataMapVO;
import cn.xhjava.crm.workbench.domain.FunnelVO;

import java.util.List;
import java.util.Map;

/**
 * Author:   XiaHu
 * Date:     2023/7/5
 */
public interface ClueService {
    int add(Clue clue) throws Exception;

    Clue selectDetailById(String id) throws Exception;

    void saveConvertClue(Map<String,Object> map) throws Exception;

    List<Clue> selectForPage(Map<String, Object> map) throws Exception;

    int selectCountForPage(Map<String, Object> map) throws Exception;

    int update(Clue clue) throws Exception;

    int delete(String[] id) throws Exception;

    Clue queryClueById(String id) throws Exception;

    DateDataMapVO queryClueCountGroupByCreateTime() throws Exception;

    List<FunnelVO> queryClueCountGroupBySource() throws Exception;

    List<FunnelVO> queryClueCountGroupByState() throws Exception;
}
